<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    // 将excel格式的时间还原成标准的时间 
    function formatExcelDate(numb, format = '/') {
      const time = new Date((numb - 25567) * 24 * 3600000 - 5 * 60 * 1000 - 43 * 1000 - 24 * 3600000 - 8 * 3600000)
      time.setYear(time.getFullYear())
      const year = time.getFullYear() + ''
      const month = time.getMonth() + 1 + ''
      const date = time.getDate() + ''
      if (format && format.length === 1) {
        return year + format + month + format + date
      }
      return year + (month < 10 ? '0' + month : month) + (date < 10 ? '0' + date : date)
    }
    // 思考如何将data中数据转化为最终输出的结果
    const data = [
      {
        入职日期: 44505,
        姓名: "小张",
        工号: "9002",
        手机号: "13800000252",
        转正日期: 44892,
        部门: "总裁办"
      },
      {
        入职日期: 44506,
        姓名: "小李",
        工号: 9006,
        手机号: "13810000512",
        转正日期: 44893,
        部门: "总裁办",
      }

    ]

    // 1. 映射对象，根据映射对象找英文的键
    const mapInfo = {
      '入职日期': 'timeOfEntry',
      '手机号': 'mobile',
      '姓名': 'username',
      '转正日期': 'correctionTime',
      '工号': 'workNumber',
      '部门': 'departmentName',
      '聘用形式': 'formOfEmployment'
    }

    const result = data.map(item => {
      const enObj = {}
      // 先使用map方法拿到data数组里面的每一个对象，
      // 在用Object.keys[item]获取到每一个中文k，在使用forEach遍历拿出每一个中文K，
      // 放进mapInfo对象里mapInfo[zhkey]，根据映射对象找到对应的数据获取里面的值作为英文k，
      // 创建一个空对象，把英文k作为键 enObj[enkey]放进空对象里,
      // 把zhkey放进item对象里item[zhkey]，根据映射对象，找到对应的数据获取里面的值，
      // 放进空对象里，作为enObj[enkey]的值，
      Object.keys(item).forEach(zhkey => {
        const enKey = mapInfo[zhkey]
        enObj[enKey] = item[zhkey]
        console.log(item[zhkey], '中文值');
        //  判断enKey是否等于timenOfEntry或者是correctionTime，
        //  执行下面把对应的数据转换为标准时间格式。没有就正常的打印
        if (enKey === 'timeOfEntry' || enKey === 'correctionTime') {
          // 传入excel时间格式，还原成标准的时间格式
          enObj[enKey] = new Date(formatExcelDate(item[zhkey]))
        } else {
          enObj[enKey] = item[zhkey]
        }
      })
      return enObj
    })
    console.log(result, '转化成功');
  </script>
</body>

</html>